The present invention relates generally to circuits and techniques for providing precise determination of the state of charge (SOC) of a battery or battery pack, and more particularly such circuits and techniques adapted to avoid errors in determination of the xe2x80x9cstate of chargexe2x80x9d (SOC) of the battery caused by inaccurate measurement of low xe2x80x9cstandbyxe2x80x9d current drain and also adapted to avoid errors caused by inaccurate estimates of internal self-discharge current of the battery.
It is well known that a change in the state of charge (SOC) of a battery can be accurately determined by integrating the current flow out of the battery while it is actively supplying current to a battery-powered device, and also by integrating the current flow into the battery while it is being charged. The present SOC of a battery can be thought of as the presently stored charge expressed as a fraction of the maximum charge that can be stored in the battery. The sum of the SOC and DOD (depth of discharge) of a battery is equal to 1, so the DOD, which is more useful than the SOC for some computations, is given by the expression DOD=1xe2x88x92SOC.
In many cases the battery-powered device spends a great deal of time in an xe2x80x9cidlexe2x80x9d or xe2x80x9csleepxe2x80x9d condition (referred to as a passive phase) during which only a very low xe2x80x9cidlexe2x80x9d or xe2x80x9cstand-byxe2x80x9d current is delivered by the battery to the battery-powered device. It is difficult to provide sufficiently precise measurements of the low stand-by current that are needed to achieve a sufficiently accurate integration of the stand-by current to determine the change in the SOC occurring during the passive phase or standby-condition.
Furthermore, batteries have internal self-discharge currents that are not associated with any external current delivered by the battery. The self-discharge current of a battery results in further reduction of the SOC of the battery over a period of time, but cannot be directly measured and integrated along with the external current flow through the battery in order to determine a change in the SOC of the battery. To further complicate matters, the self-discharge currents of various cells that are included in a battery pack may be different. Other errors which are difficult to account for (such as differences in battery charging efficiency depending on charging conditions, charging termination, and temperature) also affect the precision of the estimation of the SOC of a battery.
It also is well known that the no-load voltage produced by a battery accurately indicates the state of charge of the battery if no load has been recently applied to the battery (e.g., within the prior one-half hour to several hours) for a substantial period of time. However, when the battery load varies more frequently during operation of the battery-powered device, the measured no-load battery voltage does not accurately indicate the state of charge of the battery.
A disadvantage of the conventional technique of correcting the SOC of a battery by measuring the passive or stand-by discharge current and numerically correcting the measured standby current values is that the current measurement error is high. Another disadvantage of the foregoing conventional technique is that any estimation of the actual low standby current level is difficult, especially since the standby currents for different devices powered by the same battery may be substantially different.
Also, the conventional technique of correcting a battery""s SOC by using a generalized model of the self-discharge current of a battery is inadequate because the self-discharge of a battery is a very complex process that is different for different batteries, different manufacturers, and even between different series-connected cells in a particular battery. Also, the self-discharge of a battery is a strong function of the voltage at which the self-discharge begins, the temperature, and the xe2x80x9cagexe2x80x9d of the battery, and can only be roughly accounted for. The foregoing factors cause conventional correction techniques for battery self-discharge to be very inaccurate. Note that the xe2x80x9cagexe2x80x9d of a battery is generally understood to refer more to the number of charge/discharge cycles to which the battery has been subjected than to the actual amount of time that the battery has existed.
Unfortunately, conventional voltage-based algorithms use stored multiple dimensional look-up tables that do not adequately represent the characteristics of a battery as it ages.
The look-up tables are used to predict the SOC during active battery operation by making corrections for the internal battery resistance and temperature during operation of the portable battery-powered device. However, because of the complex AC frequency dependence of internal battery impedance, the conventional approximation of battery impedance as a resistance is very imprecise and results in large errors due to load transient effects. The extensive computations that would be required to accurately account for load transient effects have been impractical for applications, such as mobile applications or microcontroller applications, in which a limited amount of computer power is available.
Thus, there is an urnmet need for a circuit and method for avoiding the errors associated with measurement and integrating of extremely low standby currents supplied by a battery to a user device.
There also is an unmet need for a circuit and method for avoiding the errors in modeling and computing self-discharge currents of a battery.
There also is an unmet need for a circuit and method which avoid both the errors associated with measurement and integrating of extremely low standby currents supplied by a battery to a the user device and errors in modeling and computing self-discharge currents of a battery.
There also is an unmet need for a circuit and method for determining the SOC of a battery connected to provide power to a user device without errors caused by inaccuracies in measurement of low standby current of a user device and without errors in estimating self-discharge current of the battery.
There also is an unmet need for a circuit and method for determining the SOC of a battery connected to provide power to a user device without errors caused by using battery voltage under load conditions to determine the SOC, wherein the errors would be caused by the complexity of the battery impedance and its variability with SOC, aging, temperature, deviations in manufacturing process, and transient effects due to changing load on the battery.
It is an object of the present invention to provide a circuit and method for avoiding the errors associated with measurement and integrating of extremely low standby currents supplied by a battery to a user device.
It is another object of the invention to provide a circuit and method for avoiding the errors in modeling and computing self-discharge currents of a battery.
It is another object of the invention to provide a circuit and method which avoid both the errors associated with measurement and integrating of extremely low standby currents supplied by a battery to a user device and the errors in modeling and computing self-discharge currents of a battery.
It is another object of the invention to provide a circuit and method for determining the SOC of a battery connected to provide power to a user device without errors caused by inaccuracies in measurement of low standby current of a user device and without errors in estimating self-discharge current of the battery.
It is another object of the invention to provide a circuit and method for determining the SOC of a battery connected to provide power to a user device without errors caused by using battery voltage under load conditions to determine the SOC, wherein the errors would be caused by the complexity of the battery impedance and its variability with SOC, aging, temperature, deviations in manufacturing process, and transient effects due to changing load on the battery.
Briefly described, and in accordance with one embodiment, the present invention provides a method and system for determining a value of variable representing the amount of charge presently stored in a battery and includes determining that the battery is in a zero-current relaxed condition by establishing that no more than a negligible amount of external current is flowing through the battery and that a sufficient amount of time has passed since a last significant current flow through the battery to ensure that the battery voltage is no longer significantly changing. An open circuit voltage (OCV) of the battery is measured prior to a period of time during which flow of current through the battery is not negligible. The measured open circuit voltage (OCV0) is correlated with a corresponding value of the variable. The corresponding value is selected as a value of the variable. In the described embodiment, current flowing through the battery is measured at a moment in an active period during which current flowing through the battery is not negligible, and the value of the variable at that moment is calculated using the measured current and an earlier value of the variable determined immediately prior to re-connecting a load or a charger. The value of the variable is calculated by integrating the current during the active period and modifying the earlier value of the variable by a value of charge passed through the battery during the active period divided by a value of total no-load capacity of the battery. The variable can be the state of charge (SOC) of the battery or the depth of discharge (DOD) of the battery. A correction of the measured voltage of the battery may be performed to compensate for a voltage drop due to the internal impedance of the battery while a nearly negligible amount of current is flowing through the battery in order to obtain the open circuit voltage.
In the described embodiment, a database is stored in a memory (15), data of the database representing a relationship between the OCV of the battery and the DOD of the battery, and the database is used to correlate the measured open circuit voltage (OCV0) with a corresponding value (DOD0) of the DOD. The temperature of the battery is monitored by means of a temperature sensor (14) in thermal contact with the battery, and the database includes data representing corresponding values of the OCV of the battery and DOD of the battery as K values of OCV of the battery at known corresponding values of DOD of the battery at each of N temperatures T1, T2 . . . TN, the database also including K intercepts A[k] and K slopes B[k] defining K equations V[k](T)=A[k]+B[k]*T, wherein k is an index and T is a variable representing the temperature of the battery, and the values A[k] and B[k] have been obtained by linear regression of the OCV and DOD values, the method including operating a processor (13) to execute a first algorithm utilizing a table search algorithm and a root-finding algorithm in conjunction with the database to determine values of DOD corresponding to values of OCV measured from the battery.
In a one described embodiment the processor (13) executes a second algorithm to determine a value of total run-time (t_total) that would be required for the load, when operatively connected to the battery, to reduce the open circuit voltage of the battery to a predetermined lower limit (Vmin).